iT邦幫忙

2021 iThome 鐵人賽

DAY 10
0
自我挑戰組

Python淺顯易懂的小教室系列 第 10

[Day_10]資料儲存容器(3) - 字典(dict)

  • 分享至 

  • xImage
  •  

字典(dict)

今天要來跟大家介紹字典(dict)
字典儲存的資料為「鍵(key)」與「值(value)」對應的資料,
使用「鍵」可以搜尋對應的「值」,
取出字典的所有資料時,
發現與建構字典時輸入資料的順序不同,
字典儲存資料是沒有順序性的,
字典中的「鍵」需使用不可以變的元素,
例如 : 數字、字串與tuple。
以下來介紹字典的功能 :

新增與修改字典

1.使用「{}」建立新的字典,字典以「鍵(key):值(value)」表示一個元素

#input
example_1 = {}
print(example_1)
example_2 = {'禮拜一':'Monday','禮拜二':'Tuesday'}
print(example_2)

#output
{}
{'禮拜一': 'Monday', '禮拜二': 'Tuesday'}

2.使用「字典[鍵]」讀取鍵(key)所對應的值(value)

#input
example_2 = {'禮拜一':'Monday','禮拜二':'Tuesday'}
print(example_2['禮拜一'])
print(example_2['禮拜三'])

#output
Monday
Traceback (most recent call last):

  File "C:\Users\Windows\.spyder-py3\temp.py", line 3, in <module>
    print(example_2['禮拜三'])

KeyError: '禮拜三'

若「字典[鍵]」所讀取的鍵不在字典內,
會發出KeyError的例外(exception)。

3.使用「函式get」讀取「鍵」所對應的「值」,若「鍵」不再字典內,則回傳None,若在get函式增加第二個參數,若「鍵」不存在字典內,則回傳第二個參數所輸入的資料

#input
example_2 = {'禮拜一':'Monday','禮拜二':'Tuesday'}
print(example_2.get('禮拜一'))
print(example_2.get('早安'))
print(example_2.get('早安','不再字典內'))

#output
Monday
None
不再字典內

4.使用「字典[鍵]=值」修改個別元素與新增元素,若「鍵」存在字典內,則修改該鍵所對應的值;若「鍵」不存在字典內,則新增該鍵與值的對應

#input
example_2 = {'禮拜一':'Monday','禮拜二':'Tuesday'}
example_2['禮拜一'] = '英文是monday'
print(example_2)
example_2['禮拜三'] = 'Wednesday'
print(example_2)

#output
{'禮拜一': '英文是monday', '禮拜二': 'Tuesday'}
{'禮拜一': '英文是monday', '禮拜二': 'Tuesday', '禮拜三': 'Wednesday'}

5.使用「del字典['鍵']」會將字典中指定的「鍵」刪除,所對應的「值」也會刪除

#input
example_2 = {'禮拜一':'Monday','禮拜二':'Tuesday'}
del example_2['禮拜一']
print(example_2)

#output
{'禮拜二': 'Tuesday'}

6.使用「函式clear」清空整個字典

#input
example_2 = {'禮拜一':'Monday','禮拜二':'Tuesday'}
example_2.clear()
print(example_2)

#output
{}

由於篇幅過長,
剩下的函式部分會跟明天的集合一起介紹喔~~
大家也要繼續努力喔~~~~~
/images/emoticon/emoticon07.gif


上一篇
[Day_9]資料儲存容器 (2) - 串列(list)_(2)
下一篇
[Day_11]資料儲存容器 - 字典(dict) & 集合(set)
系列文
Python淺顯易懂的小教室30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言